package cn.com.dhcc.turbo.service.monitor;

import java.util.Date;

import org.springframework.stereotype.Component;

import cn.com.dhcc.app.core.base.IocBean;
import cn.com.dhcc.turbo.entity.monitor.QuotaValueOnTime;
@Component(IocBean.DEFAULT_NEEDALERTQUOTA_FILTER)
public class DefaultNeedAlertQuotaFilter implements INeedAlertQuotaFilter {

	/**
	 *处理逻辑：
	指标发送侧率：
	1，同一个指标如果告警一直没有解决：第一次发之后，过1小时发一次
	2，同一个指标如果告警第一次发出去之后，中途被解决过，如果再出现，立即发之后依据1，2,情况处理
	 * @param quotaValueOnTime
	 * @return
	 */
	public boolean need(QuotaValueOnTime quotaValueOnTime){
		Date lastAlertTime =  quotaValueOnTime.getLastAlertTime();
		Integer alertHandlerTimes = quotaValueOnTime.getAlertHandlerTimes();
		if(alertHandlerTimes==0||alertHandlerTimes==null){
			return true;
		}else{
			if((new Date().getTime()-lastAlertTime.getTime())>60*60*1000){
				return true;
			}else{
				return false;
			}
		}
	}
}
